iT邦幫忙

2021 iThome 鐵人賽

DAY 13
0
Software Development

C# 入门系列 第 13

C# 入门之字典

  • 分享至 

  • xImage
  •  

今天我们将来一起看一下 C# 中的另外一种数据类型:字典。

字典,是一组 key 和 value 的映射,且 key 是唯一的。

字典包含在 System.Collections.Generic namespace。

下面我们来看一下,如何创建一个字典:

using System;
using System.Collections.Generic;

namespace ConsoleApp14
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个空字典
            Dictionary<string, string> students = new Dictionary<string, string>();  
            students.Add("00001", "Tom");      // 添加数据到字典(key 和 value)
            students.Add("00002", "Jerry");
            Console.WriteLine($"00001 is {students["00001"]}");  // 通过 key 查询 value
        }
    }
}

运行结果:
https://ithelp.ithome.com.tw/upload/images/20210913/20099494gWwNdxNiDO.png

我们再来看看字典的其他操作:

using System;
using System.Collections.Generic;

namespace ConsoleApp14
{
    class Program
    {
        static void Main(string[] args)
        {
            Dictionary<string, string> students = new Dictionary<string, string>();
            students.Add("00001", "Tom");
            students.Add("00002", "Jerry");
            Console.WriteLine($"00001 is {students["00001"]}");
            foreach (var (key,value) in students)  // 变量字典中的 key 和 value
            {
                Console.WriteLine($"{key} is {value}");
            }
            Console.WriteLine("-----------------------");
            foreach (var student in students)    // 遍历字典中的 key 和 value 的另一种方法
            {
                Console.WriteLine($"{student.Key} is {student.Value}");
            }
            Console.WriteLine("-----------------------");
            foreach (var val in students.Values)      // 遍历 value
            {
                Console.WriteLine($"{val}");
            }
            Console.WriteLine("-----------------------");
            foreach (var key in students.Keys)    // 遍历 key
            {
                Console.WriteLine($"{key}");
            }
            Console.WriteLine("-----------------------");
            Console.WriteLine($"{students.ContainsKey("00002")}"); // 查询字典中是否存在某个 key
            Console.WriteLine($"{students.ContainsValue("Tom")}"); // 查询字典中是否存在某个 value
            Console.WriteLine($"{students.Count}");        // 计算字典中的 key value 对的个数
            Console.WriteLine("-----------------------");
            students.Remove("00001");        // 根据 key 删除 key value 对
            foreach (var (key, value) in students)
            {
                Console.WriteLine($"{key} is {value}");
            }
            students.Clear();          //  清空字典
            Console.WriteLine($"{students.Count}");
        }
    }
}

运行结果:
https://ithelp.ithome.com.tw/upload/images/20210913/20099494H8jWC7ce7P.png


上一篇
C#入门之列表
下一篇
C# 入门之类(Class)
系列文
C# 入门32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言